package ve.gob.cne.servicios;

import java.util.List;

import org.apache.log4j.Logger;

import ve.gob.cne.dao.Dao;
import ve.gob.cne.interfaces.IServicioReporte;
import ve.gob.cne.to.ExtintorTo;

public class ServicioReporte implements IServicioReporte {
	
	private Dao dao;
	private final static Logger logger = Logger
			.getLogger(ServicioReporte.class);
	
	@SuppressWarnings("unchecked")
	public List<ExtintorTo> getReporteGenral(String query){
		List<ExtintorTo> lista = null;
		try {
			lista = (List<ExtintorTo>) dao.getObjectSession().createSQLQuery(query);
		} catch (Exception e) {
			logger.error(e);
		}
		return lista;
	}
	
	@SuppressWarnings("unchecked")
	public List<Object> getExtintoresPorFecha(String inicio, String fin){
		List<Object> objects = null;
		
		try {
			objects = (List<Object>) dao.getObjectSession().createSQLQuery("select * from extintor where proximo_mantenimiento >= STR_TO_DATE('"+inicio+"','%d/%m/%Y') and proximo_mantenimiento <= STR_TO_DATE('"+fin+"','%d/%m/%Y')").list();
		} catch (Exception e) {
			logger.error("Ha ocurrido un error inesperado con el siguiente mensaje: " + e);
		}
		
		return objects;
	}

	public Dao getDao() {
		return dao;
	}

	public void setDao(Dao dao) {
		this.dao = dao;
	}
}
	
